#pragma once

class PGLSHAPE_API CPGLGeoEllipse:public CPGLLine2D
{
private:
	CPGLPointD m_center;
	double m_w;
	double m_h;
	void ReDraw();
public:
	CPGLGeoEllipse():m_w(1),m_h(0.5),m_center(CPGLPointD(0,0)){ReDraw();}
	CPGLGeoEllipse(double x,double y,double w,double h):m_w(w),m_h(h),m_center(CPGLPointD(x,y)){ReDraw();}
	~CPGLGeoEllipse(void){}
	void SetCenter(double x,double y);
	void SetCenter(CPGLPointD center);
	CPGLPointD GetCenter();
	void SetWidth(double width);
	double GetWidth();
	void SetHeight(double height);
	double GetHeight();
	void SetSize(double width,double height);
	CPGLPointD GetSize();
};

PGL_DECLARE_SMARTPTR(CPGLGeoEllipse);